Geospatial Media Recording System

ABSTRACT

A computer implemented geospatial media recording system which receives a global positioning signal from a global positioning system, a video stream from a video recorder and an audio stream from an audio recorder and encodes the global positioning system signal as global positioning data continuously embedded at intervals in the video stream or the audio stream at a frequency at the upper end or outside of the human audible range as a combined data stream which by operation of a geospatial media program can be concurrently displayed as a video in a first display area with a geospatial representation in second display area on a display surface with a plurality of coordinate location indicators located in the geospatial representation each at the coordinate location associated with the global positioning data embedded in the video.

I. FIELD OF THE INVENTION

A computer implemented geospatial media recording system which receivesa global positioning signal from a global positioning system, a videostream from a video recorder and an audio stream from an audio recorderand encodes the global positioning system signal as global positioningdata continuously embedded at intervals in the video stream or the audiostream at a frequency at the upper end or outside of the human audiblerange as a combined data stream which can be stored as one or more videofiles in the memory element of a computer retrievable by operation of ageospatial media program to display a video in a first display area anda geospatial representation in second display area on a display surfaceand further functions to extract global positioning data from the videoto display a plurality of coordinate location indicators with associatedmetadata in the geospatial representation each at the coordinatelocation associated with the global positioning data embedded in thevideo.

II. BACKGROUND OF THE INVENTION

Conventionally, recordings can include embedded attribute data in thedata stream enabling playback of the recording containing the attributedata by a playback device. The attribute data can contain informationunique to the recording. However, conventional attribute data embeddingmethods may locate the attribute data at the beginning or the end of thedata stream which may result in loss of the attribute data with respectdata stream segments excised from the data stream. Additionally,attribute data embedded within recordings within the audible range ofhuman hearing may generate background noise during playback of therecording and conventionally embedded attribute data within recordingscan be lost when transcoded. Moreover, conventional playback of arecordings embedded with attribute data may not include globalpositioning data continuously embedded a intervals in the recording nora coordinate encoded geographic space adapted to identify the locationcoordinates associated with real time recording.

There would be a substantial advantage in an inventive geospatialrecorder operable to continuously embed global positioning data atintervals in the data stream of a recording at an embedding frequency atthe upper end or outside the audible range of human hearing and toprovide a geospatial recording system operable to concurrently playbackthe recording and display a geospatial representation of a coordinateencoded geographic space adapted to generate one or more coordinatelocation indicators corresponding to location coordinates continuouslyembedded at intervals in the data stream of the recording and to provideeditors useful in editing the data stream or data stream segments of therecording without loss of the embedded global positioning data.

III. SUMMARY OF THE INVENTION

Accordingly, a broad object of particular embodiments of the inventioncan be to provide a geospatial recorder having a processor incommunication with a memory element containing a geospatial recordingapplication (computer readable media) executable by the processor toreceive and decode a global positioning signal generated by a globalpositioning system, receive a video stream from a video recorder, andreceive an audio stream from an audio recorder and to further functionto generate a combined data stream containing video stream data andaudio stream data one or both continuously embedded at intervals withthe global positioning data and as to particular embodimentscontinuously embed the audio stream at intervals with the globalpositioning data at an embedding frequency at an upper end of or outsideof the human audible range or as a text overlay in the video streamdata.

Another broad object of particular embodiments of the invention can beto provide a geospatial recorder having a processor in communicationwith a memory element containing a geospatial recording applicationexecutable by the processor to generate a combined data streamcontaining video stream data and audio stream data one or bothcontinuously embedded at intervals with the global positioning data andto further function to receive waypoint signals to set waypoints (orbookmarks) in the global positioning data each waypoint associated witha video image and the corresponding embedded global positioning data inthe combined data stream) for retrievable storage in the memory elementas a companion file.

Another broad object of particular embodiments of the invention can beto provide a geospatial recording system in which one or a plurality ofnodes are connected to the geospatial recorder or connected to one ormore server computers which retrievably store the combined data streamgenerated by the geospatial recorder and further include a processor incommunication with a memory element containing a geospatial mediaprogram (computer readable media) executable by the processor toconcurrently display on a display surface of one or more nodes agraphical user interface including playback of a video associated withvideo stream data embedded with global positioning data, and including ageospatial representation of a coordinate encoded geographic spaceincluding coordinate location indicators located at coordinate locationsin the geospatial representation corresponding to the locationcoordinates included in the embedded global positioning data associatedwith the video images in the video.

Another broad object of particular embodiments of the invention can beto provide a geospatial recording system including a processor incommunication with a memory element containing a geospatial mediaprogram (computer readable media) executable by the processor to displayan image on the display surface of a node and to further display aglobal positioning data entry field into which location coordinateslongitude latitude, and altitude (respectively X, Y, Z) can be enteredto associate or overwrite location coordinates associated with theimage.

Another broad object of particular embodiments of the invention can beto provide a geospatial recording system including a processor incommunication with a memory element containing a geospatial mediaprogram (computer readable media) executable by the processor to displayon the display surface of a node a video associated with video streamdata embedded with global positioning data and to further display ageospatial representation of a coordinate encoded geographic spaceincluding coordinate location indicators located at coordinate locationsin the geospatial representation corresponding to the locationcoordinates included in the embedded global positioning data associatedwith the video images in the video and to display a video segmentselector for selection of a video segment start point and a videosegment end point to identify a video segment and associated data streamsegment and to extract the video segment and associated data streamsegment and to splice the video segment start point to the video segmentend point allowing playback of the video with omission of the definedvideo segment.

Another object of particular embodiments of the invention is to providea geospatial recording system including a processor in communicationwith a memory element containing a geospatial media program (computerreadable media) executable by the processor to display on the displaysurface of a node a video associated with video stream data embeddedwith global positioning data and to display a geospatial representationof a coordinate encoded geographic space including coordinate locationindicators located at coordinate locations in the geospatialrepresentation corresponding to the location coordinates included in theembedded global positioning data associated with the video images in thevideo and to display an annotation entry field including one or moreannotation entry areas for entry of annotations and associating theannotation with a video image of the video.

Naturally, further objects of the invention are disclosed throughoutother areas of the specification, drawings, photographs, and claims.

IV. BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a particular embodiment of a geospatialrecorder operable in an embodiment of a geospatial media recordingsystem.

FIG. 2 is a block diagram of an illustrative computer means, networkmeans and computer-readable medium which provides computer-executableinstructions to provide an embodiment of the geospatial recorder andgeospatial media recording system.

FIG. 3 is an illustration of particular embodiment of a graphic userinterface which concurrently displays on a display surface a videogenerated from a combined data stream continuously embedded at intervalswith global positioning data and a geospatial representation including aplurality of coordinate location indicators each located the locationcoordinates included in global positioning data associated with one morevideo images of the video.

FIG. 4 is an illustration of particular embodiment of a graphic userinterface which concurrently displays on a display surface a pluralityof videos generated from a plurality of combined data stream eachcontinuously embedded at intervals with global positioning data and acorresponding plurality of status indicators pertaining to globalpositioning data received or waypoints bookmarked in the globalpositioning data.

FIG. 5 is an illustration of particular embodiment of a graphic userinterface which displays media icons associated with a media fileretrievably stored in a media database which upon retrieval concurrentlydisplays on a display surface a video generated from a combined datastream continuously embedded at intervals with global positioning dataand a geospatial representation including a plurality of coordinatelocation indicators each located in the geospatial representation at thelocation coordinates included in global positioning data associated withthe video.

FIG. 6 is an illustration of particular embodiment of a graphic userinterface which concurrently displays an image associated or associablewith global positioning data and a global positioning data entry fielddisplaying location coordinates corresponding to the associated globalpositioning data or in which location coordinates can be entered oredited for association with the image.

FIG. 7 is an illustration of a particular embodiment of a graphic userinterface which concurrently displays on a display surface a videogenerated from a combined data stream continuously embedded at intervalswith global positioning data and a geospatial representation including aplurality of coordinate location indicators each located at the locationcoordinates included in the global positioning data associated with onemore video images of the video and displays a video segment selectorwhich allows one video image or video segment including a plurality ofvideo images to be selected.

FIG. 8A is an illustration of a particular embodiment of a graphic userinterface which concurrently displays on a display surface a videogenerated from a combined data stream continuously embedded at intervalswith global positioning data and a geospatial representation including aplurality of coordinate location indicators each located at the locationcoordinates included in the global positioning data associated with onemore video images of the video in which a video segment has beenselected having a video segment start point and a video segment endpoint with the selected video segment deleted from the video and thecorresponding coordinate location indicators deleted from the geospatialrepresentation.

FIG. 8B is an illustration of a particular embodiment of a graphic userinterface which concurrently displays on a display surface a videogenerated from a combined data stream continuously embedded at intervalswith global positioning data and a geospatial representation including aplurality of coordinate location indicators each located at the locationcoordinates corresponding to the global positioning data associated withone more video images of the video in which a selected video segmentbetween a video segment start point and a video segment end point hasbeen extracted from the video and the corresponding coordinate locationindicators between the video segment start point and a video segment endpoint have been removed from the geospatial representation and the avideo segment start point and a video segment end point spliced asconcurrently shown in the geospatial representation by locating thecoordinate location indicators corresponding to the video segment startpoint and a video segment end point proximate each other with concurrentremoval of geospatial representation associated with the extracted videosegment.

FIG. 9 is an illustration of a particular embodiment of a graphic userinterface which concurrently displays on a display surface a videogenerated from a combined data stream continuously embedded at intervalswith global positioning data and a geospatial representation including aplurality of coordinate location indicators each located at the locationcoordinates corresponding to the global positioning data associated withone more video images of the video and an annotation entry field havinga plurality of annotation entry areas in which annotations can beentered for association with a video image and corresponding coordinatelocation in the geospatial representation.

V. DETAILED DESCRIPTION OF THE INVENTION

Now referring primarily to FIG. 1, which provides general overview of ageospatial media recording system (1). The geospatial recorder (2) canoperate discretely to acquire and encode a video stream (3), an audiostream (4) and global positioning signal (5) generating a combined datastream (6) including video stream data (7) and audio stream data (8),either or both of which, are continuously embedded at intervals withglobal positioning data (9). The geospatial recorder (2), as part of thegeospatial media recording system (1), can be connected to a computernetwork (10) which can include one or a plurality of nodes (11) eachcontaining or having access to a geospatial media program (12) whichimplements a graphical user interface (13) interactive with a user (14)to display a video image (15) corresponding to the video stream data (7)(whether during acquisition by the geospatial recorder (2) or byretrieving a media file (16)) and to concurrently display a geospatialrepresentation (17) in which one or a plurality of coordinate locationindicators (18) can be generated based on extraction of the globalpositioning data (9) embedded in the video steam data (7) or audiostream data (8).

Embodiments of the geospatial media recording system (1) are describedin the general context of a processor (19) in communication with amemory element (20) which contains the geospatial media program (12)providing a computer readable media which includes computer-executableinstructions such as an application program or program modules whichutilize routines, programs, objects, components, data structures, or thelike, executable by the processor (19) to perform particular functionsor tasks or implement particular abstract data types, or the like;however, it is not intended that embodiments of the geospatial mediaprogram (12) be limited to a particular computer code, set ofcomputer-executable instructions or protocols.

The Geospatial Recorder. Now referring primarily to FIGS. 1 and 2, thegeospatial recorder (2) includes or has access to a processor (19) incommunication with a memory element (20) containing or having access toa geospatial recording application (21), which can be discrete from or apart of the geospatial media program (12). The geospatial recordingapplication (21) includes a global positioning signal receiver module(23) capable upon execution of receiving and decoding the globalpositioning signal (5) generated by a global positioning system (24).The term “global positioning system (24)”, for the purposes of thisinvention, means a plurality of earth-orbiting satellites (25) eachtransmitting a satellite positioning signal (26) continuously towardsthe Earth (27), that enables a coordinate location (28), including alongitude (29), a latitude (30) and an altitude (31)(respectively X, Y,Z) of the global positioning signal receiver (22) on or near the Earth'ssurface (32) to be accurately estimated from the difference in arrivaltimes of the satellite positioning signals (26) from the plurality ofearth-orbiting satellites (25). The accuracy of the coordinate location(28) depending upon the number of satellite positioning signals (26)locked onto in determining the coordinate location (28). For example, toprovide a coordinate location (28) with an accurate three dimensionallocation (X, Y, Z), four satellite positioning signals (26) must belocked onto while a coordinate location (28) limited to a longitude (29)and a latitude (30) (X, Y) can be gained by locking onto two or threesatellite positioning signals (26).

The geospatial recorder (2) can further include a video recorder (33)and an audio recorder (34). The geospatial recording application (21)can further include a video receiver module (35) which upon executionreceives the video stream (3) from the video recorder (33) and an audioreceiver module (36) which upon execution receives the audio stream (4)from the audio recorder (34). The term “video stream (3)” for thepurposes of this invention, means one or more channels of video signal(37) being transmitted, whether streaming or not streaming, analog ordigital. The term “audio stream (4)” for the purposes of this invention,means one or more channels of audio signal (38) being transmitted,whether streaming or not streaming, analog or digital. The term “videorecorder (33)” for the purposes of this invention, means any devicecapable of recording one or more video streams (3). Examples of a videorecorder include, but are not necessarily limited to, a video camera, avideo surveillance recorder, a computer containing a video capture card,mobile phones having video recording capabilities, or the like. The term“audio recorder (34)” for the purposes of this invention, means anydevice capable of recording one or more audio streams (4). Examples ofan audio recorder (34) include, but are not necessarily limited to, avideo camera having audio recording capabilities, mobile phones, adevice containing a mic-in input, a device having a line-in input, acomputer containing an audio capture card, or the like.

The geospatial recording application (21) can further include an encodermodule (39) which upon execution encodes the global positioning systemsignal (5) as global positioning data (9), the video stream (3) as videostream data (7), and the audio stream (4) as audio stream data (8). Theencoder module (39) upon execution further functions to embed the globalpositioning data (9) in the video stream data (7) or the audio streamdata (8). The encoder module (39) further functions upon execution togenerate the combined data stream (6) containing the video stream data(7) and the audio stream data (8) one or both embedded with the globalpositioning data (9). The encoded audio stream data (8) or video streamdata (7) can be assembled in a container bit stream such as MP4, FLV,WebM, ASF, ISMA, MOV, AVI, or the like.

As to particular embodiments, the encoder module (39) can embed theglobal positioning data (9) in the audio stream data (8) at an embeddingfrequency (40) at about an upper end of a human audible range (41) oroutside the human audible range (41) in Hertz. The embedding frequency(40) can occur at between about 15,000 Hz to about 23,000 Hz. As toparticular embodiments, one or more embedding frequencies (41) can bepre-selected to reduce or substantially eliminate human audible sound(42) during reproduction of sound (43) associated with the audio streamdata (8). One or more embedding frequencies (41) can be selected fromthe group comprising or consisting of: between about 15,500 Hz to about16,000 Hz, between about 15,750 Hz to about 16,250 Hz, between about16,000 Hz to about 16,500 Hz, between about 16,250 Hz to about 16,750Hz, between about 16,500 Hz to about 17,000 Hz, between about 16,750 Hzto about 17,250 Hz, between about 17,000 Hz to about 17,500 Hz, betweenabout 17,250 Hz to about 17,750 Hz, between about 17,500 Hz to about18,000 Hz, between about 17,750 Hz to about 18,250 Hz, between about18,000 Hz to about 18,500 Hz, between about 18,250 to about 18,750 Hz,between about 18,500 Hz to about 19,000 Hz, between about 18,750 Hz toabout 19,250 HZ, between about 19,000 Hz to about 19,500 Hz, betweenabout 19,250 Hz to about 19,750 Hz, between about 19,500 Hz to about20,000 Hz, between about 19,750 Hz to about 20,250 Hz, between about20,000 Hz to about 20,500 Hz, between about 20,250 Hz to about 20,750Hz, between about 20,500 Hz to about 21,000 Hz, between about 20,750 Hzto about 21,250 Hz, between about 21,000 Hz to about 21,500 Hz, betweenabout 21,250 Hz to about 21,750 Hz, between about 21,500 Hz to about22,000 Hz, between about 21,750 Hz to about 22,250 Hz, between about22,000 Hz to about 22,500 Hz, and between about 22,250 Hz to about22,750 Hz.

The encoder module (39) upon execution can further function tocontinuously embed the global positioning data (9) at intervals in theaudio stream data (8). The interval frequency (44) for embedding globalpositioning data (9) in the audio stream data (8) can be selected in therange of between about 1 Hz to about 5 Hz; however, a greater range canbe utilized depending upon the application. For example, up to 100 Hz oreven greater as improvements in the technology occur. As to particularembodiments, the interval frequency (44) can be between about 1 Hz or 5Hz; although the interval frequency (44) can be selected from one ormore of the group comprising or consisting of: between about 1 Hz toabout 2 Hz, about 1.5 Hz to about 2.5 Hz, about 2 Hz to about 3 Hz,about 2.5 Hz to about 3.5 Hz, about 3 Hz to about 4 Hz, about 3.5 Hz toabout 4.5 Hz, and about 4.0 to about 5 Hz or similarly incrementallyselected throughout a wider range up to 100 Hz.

As to particular embodiments, the encoder module (39) upon execution canembed the global positioning data (9) in the video stream data (7). Theglobal positioning data (9) can be embedded as a text overlay element(45) (for example, a closed captioning element) of the video stream data(7). The global positioning data (9) can be continuously embedded atintervals in the text overlay (45) of the video stream data (7) with aninterval frequency (44) which is the same or similar to that utilized inembedding global positioning data (9) in the audio stream data (8), asabove described.

With respect to embedding global positioning data (9), whether in theaudio stream data (8) or the video stream data (7), the embedding canoccur continuously at the selected frequency interval (44) for theentire duration of, or between a pair of data end points (46)(47)selected within the video stream data (7) or the audio stream data (8).The combined data stream (6) continuously embedded with the globalposition data (9) allows a data stream point (46) or data streamsegments (47) to be isolated or excised from the combined data stream(6) without loss or having a reduced loss of the global positioning data(9) associated with the data stream point (46) or data stream segment(47).

The geospatial recording application (21) can further include a timecode module (48) which upon execution functions to associate currentdate and time data (49) with the global positioning data (9) embedded inthe audio stream data (8) or the video stream data (7) of the combineddata stream (6).

The geospatial recording application (21) can further include a codecmodule (50) which functions to compress the combined data stream (9)including the global positioning data (9) embedded in the audio streamdata (8) or the video stream data (7) of the combined data stream (6).The audio stream data (8) can be compressed using an audio codec (51)such as MP3, Vorbis, AAC, or the like. The video stream data (7) can becompressed using a video codec (52) such as H.264, VP8, or the like. Thecompressed combined data stream (6) embedded with the global positioningdata (9) can be retrievably stored in the memory element (20) whetherinternal to the geospatial recorder (2) or in a computer network node(11) accessible by the geospatial recorder (2).

In a particular embodiment of the geospatial recorder (2), thegeospatial recording application (21) can further include a waypointinput module (53) which upon execution can communicate with the globalpositioning system receiver module (23) and the video receiver module(35) to generate a waypoint (54)(also referred to as a “bookmark”) at adata stream point (46C) associated with or at the activation time of thewaypoint input module (53). The waypoint input module (53) can beactivated by user interaction with a waypoint trigger (53A)(asillustrative examples, manual closure of a switch, keyboard stroke,mouse click, or the like). The waypoint input module (53) can furthercommunicate with the time code module (48) to associate a current dateand time data (49) with the waypoint (54). The geospatial recordingapplication (21) can further include a video image extraction module(55) activated by execution of the waypoint input module (53) to extracta video image (15) and the corresponding embedded global positioningdata (9) from the audio stream data (8) or the video stream data (7) ofsaid combined data stream (6) at the waypoint (54) along with theassociated current date and time data (49) for retrievable storage inthe memory element (20) as a companion file (67).

The Geospatial Media Recording System. Again referring primarily toFIGS. 1 and 2, the geospatial recorder (2) can be connected to one or aplurality of nodes (11) including one or more client computers (68) orserver computers (69) through a wide area network (70) (“WAN”), such asthe Internet (71), or one or more local area networks (72) (“LAN”). Asto particular embodiments, the one or more client computers (68) cantake the form of a limited-capability computer designed specifically fornavigation on the World Wide Web of the Internet (71). Alternatively,the one or more client computers (68) might be set-top boxes,intelligent televisions connected to receive data through anentertainment medium such as a cable television network or a digitalsatellite broadcast, hand-held devices such as smart phones, slate orpad computers, personal digital assistants or camera/cell phone, ormultiprocessor systems, microprocessor-based or programmable consumerelectronics, network PCs, minicomputers, mainframe computers, or thelike.

Again referring primarily to FIGS. 1 and 2, each of the one or moreclient computers (68) can include an Internet browser (73) such asMicrosoft's INTERNET EXPLORER®, GOOGLE CHROME®, MOZILLA FIREFOX®, or thelike, which functions to download and render multimedia content that isformatted in “hypertext markup language” (HTML). In this environment, aserver computer (69) might be programmed to implement the mostsignificant portions of a graphical user interface (13). As to theseembodiments, the geospatial media program (12) can further include agraphical user interface module (75) which implements the graphical userinterface (13). The graphical user interface module (75) can be residentin the server computer (69)(as shown in the example of FIG. 1) and theone or more client computers (68) can use the Internet browser (73) tosimply display downloaded content and to relay user inputs back to theserver computer (69). The server computer (69) would respond byformatting screen displays (76) (as shown in the illustrative examplesof FIGS. 3 through 9) and downloading the screen displays (76) fordisplay on a display surface (77) associated with a client computer(68).

In other embodiments, the server computer (69) can be used primarily asa media database (78) for retrievable storage of media files (16), withprimary responsibility for implementing the graphical user interface(13) being placed upon each of the client computer (68)(as shown in theexample FIG. 2). As to these embodiments, each of the client computers(68) can execute the graphical user interface module (75) implementingthe graphical user interface (13) to format screen displays (76) and toretrieve media files (16) from the server computer (69) media database(78). While illustrative examples in this description attribute storageand retrieval of data to one server computer (69) for clarity, it is tobe understood that various types of data may reside in one servercomputer (69) or one type of data can be distributed among a pluralityof server computers (69). Embodiments of the invention can utilizeserver computers (69) to a lesser or greater number or extent dependingupon the application. The geospatial media program (12) can uponexecution can provide media files (16) and other data obtained from theserver computer (69) in a common format.

A user (14) can enter commands and information into one or more clientcomputers (68) through input devices (79) such as a keyboard (80) or apointing device (81) such as a mouse (82); however, any method or devicethat converts user (14) action into commands and information can beutilized including, but not limited to: a microphone, joystick, gamepad, touch screen, or the like. A display surface (77) such as a monitorscreen or other type of display device can also be connected to a bus(83) via a video display interface (84), such as a video adapter, or thelike. The graphical user interface (13) can in part be presented as aninteractive graphic user interface (13) on the display surface (77). Inaddition to the display surface (77), each of the one or more clientcomputers (68) can further include other peripheral output devices (85)such as speakers (86) and printers (87); although the peripheral outputdevices (85) are not so limited.

Now referring primarily to FIG. 2, as a non-limiting example, a clientcomputer (68) can provide a computer processor (88), a computer memoryelement (89), and a bus (83) which operably couples components of theclient computer (68), including without limitation the computer memoryelements (89) to the computer processor (88). The computer processor(88) can comprise one central-processing unit (CPU), or a plurality ofprocessing units which operate in parallel to process digitalinformation. The bus (83) may be any of several types of busconfigurations including a memory bus or memory controller, a peripheralbus, and a local bus using any of a variety of bus architectures. Thecomputer memory element (89) can without limitation be a read onlymemory (ROM) (90) or a random access memory (RAM) (91), or both. A basicinput/output system (BIOS) (92), containing routines that assisttransfer of data between the components of the client computer (68),such as during start-up, can be stored in ROM (90). The client computer(68) can further include a hard disk drive (93) for reading from andwriting to a hard disk (94), a magnetic disk drive (95) for reading fromor writing to a removable magnetic disk (96), and an optical disk drive(97) for reading from or writing to a removable optical disk (98) suchas a CD ROM or other optical media. The hard disk drive (93), magneticdisk drive (95), and optical disk drive (97) can be connected to the bus(83) by a hard disk drive interface (99), a magnetic disk driveinterface (100), and an optical disk drive interface (101),respectively. The drives and their associated computer-readable mediaprovide nonvolatile storage of computer-readable instructions, datastructures, program modules and other data for the client computer (68).It can be appreciated by those skilled in the art that any type ofcomputer-readable media that can store data that is accessible by acomputer, such as magnetic cassettes, flash memory cards, digital videodisks, Bernoulli cartridges, random access memories (RAMs), read onlymemories (ROMs), and the like, may be used in a variety of operatingenvironments. A number of program modules (102) may be stored on orincluded in the hard disk drive (93), magnetic disk (96), optical disk(98), ROM (90), or RAM (91), including an operating system (103), one ora plurality of application programs and in particular the geospatialmedia program (12).

A “click event” occurs when the user (14) operates a program,application, module, or code function through the use of a command whichfor example can include pressing or releasing the left mouse button(104) while a pointer (105) is located over a control icon (106)(orother interactive field which activates a function) displayed in thegraphical user interface (13). However, it is not intended that a “clickevent” be limited to the press and release of the left button (104) on amouse (82) while a pointer (105) is located over a control icon (106),rather, a “click event” is intend to broadly encompass a command by theuser (14) through which a function of a program, application, module, orcode can be activated or performed, whether through selection of one ora plurality of control icon(s) (106) or fields, or by user voicecommand, keyboard stroke, mouse button, touch on a touch screen, orotherwise. It is further intended that control icons (106) can beconfigured or displayed without limitation as a bullets, point, acircle, a triangle, a square, a polygon (or other geometricconfigurations or combinations or permutations thereof), or as fields orboundary elements created in displayed images, or as fields in whichlocations, addresses, or other terms can be entered manually, such as: astreet address, a zip code, a county code, a natural area code, alongitude (29)(also referred to as “X”), a latitude (30) (also referredto as “Y”), an altitude (31) (also referred to as “Z”), locationcoordinates (107)(X and Y or Z or XYZ), or other notation, script,character, or the like.

The client computer (68) may operate in a networked environment usingone or more logical connections (108) to connect to other nodes (11)such as the geospatial recorder (2) or a server computer (69). Theselogical connections (108) can be achieved by one or more communicationdevices (109) coupled to or a part of the client computer (68); however,the invention is not limited to a particular type of communicationsdevice (109). The server computer (69) can be another computer, aserver, a router, a network personal computer, a client, a peer deviceor other common network node, and can include a part or all of theelements above-described relative to the client computer (68). Thelogical connections (108) depicted in FIG. 2 can include a LAN (72) orWAN (70). Such networking environments are commonplace and include forexample: enterprise-wide computer networks, intranets, wirelessnetworks, global satellite networks, cellular phone networks, theInternet (71), or the like.

When used in a LAN-networking environment, the client computer (68) canbe connected to the LAN (72) through a network interface (110) oradapter, which is one type of communications device (109). When used ina WAN-networking environment, the client computer (68) typicallyincludes a modem (111), a type of communications device (109), or othertype of communications device for establishing communications over theWAN (70), such as the Internet (71)(as shown in the example of FIG. 1).The modem (111), which may be internal or external to the clientcomputer (68), can be connected to the bus (83) via a serial portinterface (112). In a networked environment, program modules depictedrelative to the client computer (68), or portions thereof, may be as tocertain embodiments of the invention be stored in the server computer(69) (as shown in the examples of FIGS. 1 and 2). It is appreciated thatthe network connections (109) shown are exemplary and other means of andcommunications devices for establishing a communications link betweenthe nodes (11) can be used.

Again referring primarily to FIGS. 1 and 2, the client computer (68) canencompass a single client computer (68) or can encompass a plurality ofclient computers (68) each of which can be operated by a user (14). Theuser (14), a person, a plurality of persons, a business entity, orotherwise, can execute the geospatial media program (12) including theuser interface module (75) to display a graphical user interface (13) inwhich media files (16) retrieved from the server computer (69), or thecombined data stream (6) received directly from the geospatial recorder(2), can be displayed in a common format on the display surface (77).

Now referring to FIGS. 3-16, an exemplary embodiment of a graphical userinterface (13) generated by the graphical user interface module (75) isshown. The graphical user interface (13) can be implemented usingvarious technologies and different devices, depending on the preferencesof the designer and the particular efficiencies desired for a givencircumstance. By click event, the user (14) can activate the graphicaluser interface module (75) which functions to display the graphical userinterface (13) on a display surface (77) of the client computer (68).

The geospatial media program (12) further includes a geospatialrepresentation module (113) which upon execution functions to retrieveand display a geospatial representation (17) of a coordinate encodedgeographic space (114)(such as the Earth's surface (32)) on the displaysurface (77) of the client computer (68). The geographic representation(17) can take any viewable form having any number of dimensions, anymanner of symmetry, geometric properties, whether finite or infinite,which can be adapted to allow selection of a coordinate location (28)having location coordinates (107)(X or Y or XY or XYZ) by execution ofthe geospatial media program (12), whether by utilizing a pointer (105)pointing to a coordinate location (28) in the geographic representation(17), or by entering location coordinates (107), selection from a dropdown list of coordinate locations (28), key word search, photograph ordata coordinate locations, photo captions, photo attribute datagenerated by a camera or other devices, or search criteria derived fromall of the above, or the like attributable to the coordinate encodedgeographic space (114). Typically, the geospatial representation (17)will be in the form of a graphical image, an aerial image, a satelliteimage, a thermal image, topography map, a geo-planar map, a photograph,whether in two or three dimensions. For example, the geospatialrepresentation module (113) can access a server computer (69) which canserve, as examples: GOOGLE MAPS®, GOOGLE EARTH®, BING MAPS®, MAPQUEST®,ESRI ARCGIS®, PANORAMIO®, or the like.

In the example provided by FIG. 3, the geospatial representation module(113) retrieves from a server computer (69) an coordinate encodedgeographic space (114), whether in whole or in part, which can becontinuous or discontinuous, and decodes the coordinate encodedgeographic space (114) to display the geospatial representation (17) onthe display surface (77) of the client computer (68). The geographicrepresentation (17) can be displayed as a three dimensional image of aportion of the Earth's surface (32), including, at the displayed scale,roadways, manmade structures, or the like. As to particular embodiments,the geographic representation (17) can further display certaingeographic and administrative boundaries such as such as states,counties, cities, towns or residential areas; however, it is notintended that embodiments of the geographic representation (17)necessarily include other than a graphical representation (17) includinga coordinate encoded geographic space (115) in which locationcoordinates (107)(X, Y or X, Y, Z) define a unique coordinate location(28) in the geospatial representation (17).

Now referring primarily to FIGS. 2 and 3, as to particular embodiments,the geospatial media program (12) can further include a navigationmodule (115) which upon execution can display a navigation controller(116) on the display surface (77) of the client computer (68). Thegeographical representation (17) displayed on the display surface can beoperably coupled to the navigation controller (116) to allow thegeographic representation (17) to be directionally moved on the displaysurface (77) by user interaction with the navigation controller (116)(for example with a pan tool (117)) to display portions of thegeographic representation (17) of the coordinate encoded geographicspace (114) which at the displayed scale, lie outside of the geographicrepresentation (17) displayed on the display surface (77). As to certainembodiments, the navigation controller (116) can be displayed in theform of arrows (118) correspondingly pointing in one or more cardinaldirections (North, East, South, West). An arrow (118) by click eventactivates the navigation module (115) to move the view of the geographicrepresentation (17) directionally on the display surface (77).

The navigation controller (116) can further include an image scalecontrol (119). The geographic representation (17) can be operablycoupled to image scale control (119) to allow the geographicrepresentation (17) to be increased or decreased in scale on the displaysurface (77)(for example with a zoom tool (120)). As to certainembodiments, the image scale control (119) can be displayed on thedisplay surface (77) in the form of a slider element (121) which can bedragged up or down to correspondingly increase or decrease the scale ofthe geographic representation (17) displayed on the display surface (77)and can further include a plus icon (122) or a minus icon (123) which byclick event correspondingly increases or decreases scale of thegeographic representation (17). However, these examples of directionallymoving and altering scale of the geographic representation (17) areillustrative and other embodiments can allow the geographicrepresentation (17) to be directionally moved or altered in scale byclick event including one or more of key stroke, mouse drag, menu,toolbar, or the like.

Again referring primarily to FIGS. 3 and 4, the geospatial media program(12) can further include a media input module (124) which duringacquisition of the video stream (3), the audio stream (4) and the globalpositioning signal (5) by the geospatial recorder (2), as abovedescribed, decodes the combined data stream (6) and either in a LAN (72)or a WAN (70) environment displays a video (125) on the display surface(77) of the client computer (68) currently with the geospatialrepresentation (17) corresponding to the portion of the a coordinateencoded geographic space (114) associated with global positioning data(9) embedded in the audio stream data (8) or the video stream data(7)(as shown in the example of FIG. 3). A plurality of combined datastreams (6) can each be decoded and each one can be concurrentlydisplayed in a corresponding plurality of display surface areas (126)allowing the video (125) associated with each one of the plurality ofcombined data streams (6) to be concurrently viewed in corresponding oneof the plurality of display surface areas (126). The media input module(124) can also function to provide a corresponding plurality of statusindicators (127) correspondingly indicating the status of each of theplurality of combined data streams (6). The status indicators (127) caninclude location coordinates (107) (longitude (29) latitude (30),altitude (31), current date and time data (49) when the data stream wasacquired the speed of the recorder(s) when the data stream was acquired,the satellite (25) strength of the global positioning data (9), or thelike.

Each of the combined data streams (6) can be stored as media files (16)retaining the embedded global positioning data (9) in a server computer(69) media database (78) in the computer memory element (89). The mediainput module (124) can further function to retrieve from a servercomputer (69) or a client computer (68) a media file (16) retainingembedded global positioning data (9), as above described. The term“media file (16)” for the purposes of this invention means any type offile embedded with global positioning data (9) and without limiting thebreadth of the foregoing can be an image file, a video file, documentfile, map files, shape files, extensible markup language file, keyholemarkup language file, or the like.

Whether the media input module (124) functions during acquisition of thecombined data stream (6) or functions to retrieve media files (16), themedia input module (124) utilizes a plurality of different parsers (74)to read video data (7), audio data (8), and global positioning data (9)in the combined data stream (6) or from any file format or media type.Once the media input module (124) opens the media file (16) or receivesthe combined data stream (6), a global positioning data extractionmodule (128) functions to extract the global positioning data (9) fromthe combined data stream (6) or media file (16). The global positioningdata extraction module (128) includes decoding applications which can beapplied to the combined data stream (6) or media file (16) depending onthe manner of embedding of the global positioning data (9) in thecombined data stream (6) or media file (16). As an example, if the mediafile (16) comprises a video file (135) with the global positioning data(9) embedded in the audio stream (8), as above described, then an audiostream decoder (129) operates to decode the global positioning data (9).By way of a second example, if the media file (16) comprises a videofile (135) with the global positioning data (9) embedded as a textoverlay element (45), as above described, then an optical characterrecognition decoder (130) operates to decode the global positioning data(9).

The media input module (124) further functions to activate a view module(131) which functions to display the viewable content of the combineddata stream (6) or the media file (16) on the display surface (77) ofthe client computer (68). For example, if the media file (16) comprisesan image file (132) then the view module (131) activates an image viewermodule (133) which functions to display an image (134) associated withthe image file (132) on the display surface (77). As a second example,if the media file (16) comprises a video file (135) then the view module(131) activates a video viewer module (136) which functions to playbacka video (125) associated with the video file (135) on the displaysurface (77) of the client computer (68). The media input module (124)along with the global positioning data extraction module (128) and viewmodule (131) can concurrently open and concurrently display a pluralityof combined data streams (6) or media files (16) on the display surface(77) of the client computer (68) along with the corresponding geospatialrepresentation (17).

Now referring to FIG. 3, as to particular embodiments, as the combineddata stream (6) is acquired, the media input module (124) can furtherfunction to generate and display one or a plurality of coordinatelocation indicators (18) in the geographic representation (17) based onthe global positioning data (9) extracted by the global positioning dataextraction module (128) from the combined data stream (6). Accordingly,as each video image (15) is displayed on the display surface (77) theglobal positioning data (6) can be extracted and converted to locationcoordinates (107) in the coordinate encoded geographic space (114) and acoordinate location indicator (18) can be displayed at the correspondingcoordinate location (28) (for example X, Y or X, Y, Z) in the geographicrepresentation (17). As above described, the global positioning data (9)can be embedded continuously at an interval frequency (44) in the audiostream data (8) or the video stream data (7) and correspondingly aplurality of coordinate location indicators (18) can be seriallygenerated at intervals in the geographic representation (17) creating avideo track (137) associated with the global positioning data (9)extracted at intervals from the audio stream data (8) or the videostream data (7).

Again referring to FIG. 3, the media input module (124) can furtherfunction to associate metadata (138) with each coordinate location (28)or coordinate location indicator (18) displayed in the geographicrepresentation (17) which allows subsequent retrieval of the mediafile(s) (16) associated with the metadata (138) associated with eachcoordinate location (28) or coordinate location indicator (18). Themedia input module (124) can further track pointer (105) movement in thegeographic representation (17). A metadata viewer module (139) uponhover of the pointer (105) over a coordinate location indicator (18) cancause display of a metadata image (140) including metadata (138) inreadable form relating to media files (16) associated with the hoveredover coordinate location indicator (18). Upon click event of thecoordinate location indicator (18) the media input module (124) canfurther function to retrieve and open the media file (16) associatedwith the selected coordinate location indicator (18) to display theassociated media (141) on the display surface (77). For example, if themedia file (16) associated with the coordinate location indicator (18)is an image file (132) the media input module (124) activates the imageviewer module (136) which functions to display an image (134) associatedwith the image file (132) on the display surface (77). Likewise, if themedia file (16) associated with the coordinate location indicator (18)is a video file (135) then the media input module (124) activates thevideo viewer module (136) which functions to open and play back thevideo (125) associated with the video file (136) on the display surface(77) of the client computer (68). As to particular embodiments, themedia input module (124) can commence playback of the video commencingat the location coordinates (107) or the coordinate location (28) of theselected coordinate location indicator (18). For example, if theselected coordinate location indicator (18) in the geospatialrepresentation (17) has location coordinates (107) associated with 47seconds into the video (125), the video viewer module (136) commencesplayback of the video at 47 seconds into the video (125). As toparticular embodiments, as the video (125) plays, the geospatialrepresentation module (17) can function to display a current coordinatelocation indicator (142) over the coordinate location indicator (18) inthe geospatial representation (17) indicating the coordinate location(28) associated with the instantly displayed portion of the video (125).As to particular embodiments, if the coordinate location (28) of thedisplayed portion of the video (125) falls outside of the portion of thegeospatial representation (17) displayed on the display surface (77),the geospatial representation module (113) can move the geospatialrepresentation (17) to locate the current coordinate location indicator(142) within onto the display surface (77).

Again referring primarily to FIGS. 2 and 5, the geospatial media program(21) can further include a media browser module (143) which functions tomaintain the media files (16) along with the associated global positiondata (9) and metadata (138) in persistent storage allowing the mediadatabase (16) by operation of a search module (144) to be searchedthrough user (14) interaction in the graphical user interface (13).Because all the data in a media file (16) is georeferenced by locationcoordinates (107) (X, Y or X, Y, Z) and date and time elements (49)advanced searches can be performed using georeferenced search elements.As to particular embodiments, the media browser module (143) can furtherfunction to generate and display a media icon (145) on the displaysurface (77) of the client computer (68). As an illustrative example,the media file (16) can comprise a video file (135) and the media icon(145) can comprise a video image (15) extracted from the associatedvideo file (135). A pointer (105) hovered above the video image (15)(orby other click event) can activate the media browser module (143) andthe geospatial representation module (113) to generate a geospatialrepresentation (17) based on the global positioning data (9) embedded inthe video file (135) and can further generate and display one locationcoordinate indicator (18) or the plurality of location coordinateindicators (18) as a video track (137) in the geospatial representation(17), as above described. The current location coordinate indicator(142) corresponding to the global positioning data embedded in the videoimage (15) displayed as the media icon (145) can be further generatedand displayed in the geospatial representation (17). Additionally, byclick event in the media icon (145) the media browser module (143) cangenerate and display a list of media options (146) with each mediaoption (147)(such as zoom, fit all media in geospatial representation,jump to time, remove item, view metadata image, or the like) selectableby click event.

Now referring primarily to FIGS. 2 and 6, the geospatial media program(21) can further include an image editor module (148). A video image(15) extracted from a video (125) or an image (134), whether or notpreviously embedded with global positioning data (9), can be displayedon the display surface (77) by operation of the image viewer module(133), as above described. By click event (such as, pointer (105) hoverover or pointer click event in the image (15)(134)), the image editormodule (148) can be activated to generate and display on the displaysurface (77) a global positioning data entry field (149) into whichlocation coordinates (107) (X, Y, Z) can be entered by user (14)interaction to define a coordinate location (28) to associate with theimage (134). As to particular embodiments, entry of location coordinates(107) into the global positioning data entry field (149) activates thegeospatial representation module (113) to generate and display thegeospatial representation (17) corresponding to the entered locationcoordinates (107).

As to particular embodiments, if the image (15)(134) was previouslyembedded with global positioning data (9) display of the image (135) canalso activate the geospatial representation module (113) to generate anddisplay the geospatial representation (17) corresponding to the embeddedglobal positioning data (9), as above described. Subsequent entry oflocation coordinates (107) (X, Y, Z) into the global positioning dataentry field (149) overwrites the embedded global positioning data (9)embedded in the image (134) to newly define location coordinates(107)(X,Y,Z) and the coordinate location (28) associated with the image(134). The image (134) and newly defined location coordinates (107) canbe saved as an image file (132).

Now referring primarily to FIGS. 2 and 7, the geospatial media program(12) can further include a video editor module (150). A video (125),whether or not previously embedded with global positioning data (9), canbe generated and displayed on the display surface (77) by operation ofthe video viewer module (136). By click event (such as, pointer (105)hover over or by pointer click event in the video (125)), the videoeditor module (150) can be activated to allow the video (125) to beedited in various ways.

Now referring primarily to FIGS. 6 and 7, the video editor module (150)can function to allow the user (14) to view and extract each one of thevideo images (15)(frame by frame) at any point in the video (125)without loss of, and including, the associated global positioning data(9) and metadata (138), associated with each video image (15). Once thevideo image (15) is extracted from the video (125), the resulting videoimage (15) can be passed to the image editor module (148) and edited, asabove described.

Again referring primarily to FIG. 7, the video viewer module (136) uponexecution opens a video file (135) and displays the video (125) on thedisplay surface (77) and activates the geospatial representation module(113) which functions to display the geospatial representation (17) onthe display surface including the plurality of location coordinateindicators (18) or the video track (137) corresponding to the globalpositioning data (9) embedded at intervals in the video stream data (7)or the audio stream data (8). The video editor module (150) can furtherfunction to generate video segments (151) of the video (125) retainingthe corresponding embedded global positioning data segment (152) in thevideo segment (151).

Now referring primarily to FIG. 7, two illustrative examples ofselecting a pair of data stream end points (46A)(46B) as a video segmentstart point (153) and a video segment end point (154) to define a videosegment (151) of a video (125) are shown. In the first illustrativeexample, the video editor module (150) displays a video segment selector(155A) associated with the geospatial representation (17) displayed onthe display surface (77). The video segment selector (155A) includes avideo segment start point selection icon (156) which by click eventfunctions to set the video segment start point (153) by click event on afirst location coordinate indicator (157) in a video track (137). Thevideo segment selector (155) further includes a video segment end pointselection element (158) which functions to set the video segment endpoint (154) by click event on a second location coordinate indicator(159) in the video track (137). As to particular embodiments, the videoeditor module (150) can further function to identify the video segment(151) defined by the selected video segment start point (153) and thevideo segment end point (154) by visually observable alteration of thelocation coordinate indicators (18) inclusive of the video segment(151). As one illustrative example, the location coordinate indicators(18) inclusive of the video segment (151) can change color (160) in thegeospatial representation (17).

In the second illustrative example, the video editor module (150)displays a video segment selector (155B) associated with the video (125)displayed on the display surface (77). The video segment selector (155B)includes a first video image selection slider (162A) operable to advancethe video (125) video image (15) by video image (15) which by clickevent functions to set the video segment start point (153) associatedwith a first video image (163) displayed on the display surface (77).The video segment selector (155B) further includes a second video imageselection slider (162B) operable to advance the video (125) video image(15) by video image (15) which by click event functions to set the videosegment end point (154) associated with a second video image (164)displayed on the display surface (77). As to particular embodiments, thevideo editor module (150) can further function to identify the videosegment (151) defined by the selected video segment start point (153)and the video segment end point (154) in the video track (137) displayedin geospatial representation (17). Again, the video segment can beidentified by visually observable change of color (160) of the locationcoordinate indicators (18) in the geospatial representation (17)inclusive of video segment (151).

Now referring primarily to FIGS. 7, 8A and 8B, the video editor module(150) can further function to display a video segment editor (165)including a video segment removal icon (166) which by click eventactivates the video editor module (150) which functions to delete theselected video segment (151) from the video (125). The deletion of theselected video segment (151) also results in deletion of thecorresponding coordinate location indicators (18) being removed from thegeospatial representation (17) (as shown in the example of FIG. 8A as aline extending between selected first and second coordinate locationindicators (157)(159)). The video editor module then functions to jointhe video segment start point (153) and the video segment end point(154)(splices the pair of data stream end points 46A and 46B) resultingin a continuous playback video (125) of shorter length and a geospatialrepresentation (17) having the area corresponding to the deletedlocation coordinate indicators (18) removed (as shown in the example ofFIG. 8B in which the selected first and second coordinate locationindicators (157)(159) are drawn proximate each other).

The video editor module (150) can further function to display a videosegment extraction icon (167) which by click event activates the videoeditor module (150) which functions to extract the selected videosegment (151) from the video (125) along with the associated globalpositioning data (9). In the video (125), the extracted video segment(151) along with associated global positioning data (9) is deleted andthe corresponding coordinate location indicators (18) are deleted fromthe geospatial representation (17)(as shown in the example of FIG. 8A).The extracted video segment (151) along with the associated globalpositioning data (9) is preserved and can be saved as media file (16).The video editor module then functions to join the video segment startpoint (153) and the video segment end point (154)(splices the pair ofdata stream end points 46A and 46B) resulting in a continuous playbackvideo (125) of shorter length and a geospatial representation (17)having with the area corresponding to the deleted location coordinateindicators removed (as shown in the example of FIG. 8B).

The video editor module (150) can further function to display a videosegment extract and advance icon (168) which by click event activatesthe video editor module (150) which functions to extract the selectedvideo segment (151) from the video (125) along with the associatedglobal positioning data (9). In the video (125), the extracted videosegment (151) along with associated global positioning data (9) replacedwith a blank insert of the same duration as the extracted video segment(151) to retain the original time duration of the video (125) and thecorresponding coordinate location indicators (18) are deleted from thegeospatial representation (17) and replaced with a blank insert (asshown in the example of FIG. 8A). The extracted video segment (151)along with the associated global positioning data (9) is preserved andcan be saved as media file (16).

The video editor module (150) can further function to display a videosegment copy icon (169) which by click event activates the video editormodule (150) which functions to extract the selected video segment (151)from the video (125) along with the associated global positioning data(9). The original video (125) and global positioning data (9) remainunchanged. The video segment (151) and the corresponding globalpositioning data (9) can be saved as a discrete media file (16).

The video editor module (150) can further function to display a videosegment insert icon (170) which by click event activates the videoeditor module (150) which functions to allow selection of the videosegment start point (153) and the video segment end point (154). Thevideo editor then functions to allow selection of a video segment (151)(or other video (125) or video image (15)) along with the associatedglobal positioning data (9) and functions to insert the selected videosegment (151)(125)(15) between the selected video segment start point(153) and the video segment end point (154). If the video segment startpoint (153) and the video segment end point (154) are selected at thesame point the video editor functions to insert the selected videosegment (151)(125)(15) at that point. The video editor module (150)further functions to insert the corresponding coordinate locationindicators (18) into the geospatial representation (17) between theselected video segment start and end points (153)(154) in the video(125).

The video editor module (150) can further function to display a videosegment splice icon (171) which by click event activates the videoeditor module (150) which functions to allow selection of a first videosegment splice point (172) in a first video (125A) a second video splicepoint (173) in a second video (125B). The video editor module (150) thenfunctions to splice the first video (12A) and the second video (125B)together at the selected first and second video splice points (172)(173)and splices the corresponding global position data streams (9) andcorrespondingly displays the spliced coordinate location indicators (18)in the geospatial representation (17)(as shown in the example of FIG.8B).

Now referring primarily to FIG. 9, the geospatial media program (12) canfurther include an annotation editor module (174). The annotation editormodule (174) functions upon execution to allow selection by click eventof a coordinate location indicator (18) in the geospatial representation(17) which causes display of an annotation entry field (175) inassociation with the geospatial representation (17) on the displaysurface (77). As to particular embodiments, the annotation entry field(175) allows a user (14) to enter annotations (176). Annotations (176)include as illustrative examples: text elements (177) as a sequence ofcharacters or symbols entered into a first annotation entry area (178).As to particular embodiments, a second annotation entry area (179) caninclude an associated image file selector (180) which by click eventallows selection of image files (132) with image file identifiers (185).As to particular embodiments, a third annotation entry area (181) caninclude an associated document file selector (182) which by click eventallows selection of document files (183) with document file identifiers(184) displayed in a corresponding image file field (179) and documentfile field (180) of the annotation entry area (171). By click event ofan annotation icon (186) in the annotation entry field (175), theannotations (176) can be associated with the selected coordinatelocation indicator (18) and the corresponding location coordinates(107).

As to particular embodiments, annotation editor module (170) can furtherfunction to activate an optical character recognition encoder (187)which functions to encode, overlay or associate the video image(15)(video frame) corresponding to the selected coordination locationindicator (18) with the annotations (172) entered by user (14)interaction into the annotation entry area (171). Annotations (172)overlaid onto a video (125) or video image (15) can include virtuallyany type of data, including HTML hyperlinks.

Now referring primarily to FIG. 2, the geospatial media program (12) canfurther include a media output module (182). The media output module(182) functions upon execution to save all the media (141) as mediafiles (16) including all associated video stream data (7), audio streamdata (8), global positioning data (9), current date and time data (49)associated with a coordinate location (28) or location coordinates (107)as a package in a compressed searchable format in the media database(78). Since global positioning data (9) and date and time data (49) aresaved, the resulting media file (16) can all be searched by date, timeor space as well as conventional search criteria by execution of thesearch module (144). The media output module (182) also allows the mediafile (16) to be uploaded to the Internet (17).

As can be easily understood from the foregoing, the basic concepts ofthe present invention may be embodied in a variety of ways. Theinvention involves numerous and varied embodiments of a geospatialrecorder and a geospatial recording system and methods for making andusing the geospatial recorder and geospatial recording system includingthe best mode.

As such, the particular embodiments or elements of the inventiondisclosed by the description or shown in the figures or tablesaccompanying this application are not intended to be limiting, butrather exemplary of the numerous and varied embodiments genericallyencompassed by the invention or equivalents encompassed with respect toany particular element thereof. In addition, the specific description ofa single embodiment or element of the invention may not explicitlydescribe all embodiments or elements possible; many alternatives areimplicitly disclosed by the description and figures.

It should be understood that each element of an apparatus or each stepof a method may be described by an apparatus term or method term. Suchterms can be substituted where desired to make explicit the implicitlybroad coverage to which this invention is entitled. As but one example,it should be understood that all steps of a method may be disclosed asan action, a means for taking that action, or as an element which causesthat action. Similarly, each element of an apparatus may be disclosed asthe physical element or the action which that physical elementfacilitates. As but one example, the disclosure of a “geospatialrecorder” should be understood to encompass disclosure of the act of“geospatial recording”—whether explicitly discussed or not—and,conversely, were there effectively disclosure of the act of “geospatialrecording”, such a disclosure should be understood to encompassdisclosure of a “geospatial recorder” and even a “means for geospatialrecording.” Such alternative terms for each element or step are to beunderstood to be explicitly included in the description.

In addition, as to each term used it should be understood that unlessits utilization in this application is inconsistent with suchinterpretation, common dictionary definitions should be understood to beincluded in the description for each term as contained in the RandomHouse Webster's Unabridged Dictionary, second edition, each definitionhereby incorporated by reference.

All numeric values herein are assumed to be modified by the term“about”, whether or not explicitly indicated. For the purposes of thepresent invention, ranges may be expressed as from “about” oneparticular value to “about” another particular value. When such a rangeis expressed, another embodiment includes from the one particular valueto the other particular value. The recitation of numerical ranges byendpoints includes all the numeric values subsumed within that range. Anumerical range of one to five includes for example the numeric values1, 1.5, 2, 2.75, 3, 3.80, 4, 5, and so forth. It will be furtherunderstood that the endpoints of each of the ranges are significant bothin relation to the other endpoint, and independently of the otherendpoint. When a value is expressed as an approximation by use of theantecedent “about,” it will be understood that the particular valueforms another embodiment. The term “about” generally refers to a rangeof numeric values that one of skill in the art would consider equivalentto the recited numeric value or having the same function or result.Similarly, the antecedent “substantially” means largely, but not wholly,the same form, manner or degree and the particular element will have arange of configurations as a person of ordinary skill in the art wouldconsider as having the same function or result. When a particularelement is expressed as an approximation by use of the antecedent“substantially,” it will be understood that the particular element formsanother embodiment.

Moreover, for the purposes of the present invention, the term “a” or“an” entity refers to one or more of that entity unless otherwiselimited. As such, the terms “a” or “an”, “one or more” and “at leastone” can be used interchangeably herein.

Thus, the applicant(s) should be understood to claim at least: i) eachof the geospatial recorders and the geospatial recording system hereindisclosed and described, ii) the related methods disclosed anddescribed, iii) similar, equivalent, and even implicit variations ofeach of these devices and methods, iv) those alternative embodimentswhich accomplish each of the functions shown, disclosed, or described,v) those alternative designs and methods which accomplish each of thefunctions shown as are implicit to accomplish that which is disclosedand described, vi) each feature, component, and step shown as separateand independent inventions, vii) the applications enhanced by thevarious systems or components disclosed, viii) the resulting productsproduced by such systems or components, ix) methods and apparatusessubstantially as described hereinbefore and with reference to any of theaccompanying examples, x) the various combinations and permutations ofeach of the previous elements disclosed.

The background section of this patent application provides a statementof the field of endeavor to which the invention pertains. This sectionmay also incorporate or contain paraphrasing of certain United Statespatents, patent applications, publications, or subject matter of theclaimed invention useful in relating information, problems, or concernsabout the state of technology to which the invention is drawn toward. Itis not intended that any United States patent, patent application,publication, statement or other information cited or incorporated hereinbe interpreted, construed or deemed to be admitted as prior art withrespect to the invention.

The claims set forth in this specification, if any, are herebyincorporated by reference as part of this description of the invention,and the applicant expressly reserves the right to use all of or aportion of such incorporated content of such claims as additionaldescription to support any of or all of the claims or any element orcomponent thereof, and the applicant further expressly reserves theright to move any portion of or all of the incorporated content of suchclaims or any element or component thereof from the description into theclaims or vice-versa as necessary to define the matter for whichprotection is sought by this application or by any subsequentapplication or continuation, division, or continuation-in-partapplication thereof, or to obtain any benefit of, reduction in feespursuant to, or to comply with the patent laws, rules, or regulations ofany country or treaty, and such content incorporated by reference shallsurvive during the entire pendency of this application including anysubsequent continuation, division, or continuation-in-part applicationthereof or any reissue or extension thereon.

Additionally, the claims set forth in this specification, if any, arefurther intended to describe the metes and bounds of a limited number ofthe preferred embodiments of the invention and are not to be construedas the broadest embodiment of the invention or a complete listing ofembodiments of the invention that may be claimed. The applicant does notwaive any right to develop further claims based upon the description setforth above as a part of any continuation, division, orcontinuation-in-part, or similar application.

1-86. (canceled)
 87. A computer implemented system, comprising: aprocessor in communication with a memory element, said memory elementcontaining a video editor executable to: edit video stream data toassociate global positioning data at intervals in said video streamdata, depict video stream data as a video in a first display area on adisplay surface of a computing device; depict a geospatialrepresentation surrounding said global positioning data associated withsaid video stream data in a second display area on said display surfaceof said computing device; and depict said global positioning dataassociated at said intervals in said video stream data as a plurality oflocation coordinate indicators in said geospatial representationdepicted in said second display area on said display surface of saidcomputing device.
 88. The system of claim 87, wherein said video editorfurther executable to receive indications to select one of saidplurality location coordinate indicators depicted in said geospatialrepresentation on said display surface of said computing device, whereinplayback of said video images on said display surface commences with avideo image associated with said one of said plurality of coordinatelocation indicators selected in said geospatial representation on saiddisplay surface of said computing device.
 89. The system of claim 87,wherein said video editor further executable to depict a video segmentselector on said display surface of said computing device, said videosegment selector operable to select a video segment in said video, saidvideo segment retaining association with said global positioning data.90. The system of claim 89, wherein said video editor further executableto receive user indications in said segment selector to select one ofsaid plurality of location coordinate indicators depicted in saidgeospatial representation on said display surface of said computingdevice, wherein said selected one of said plurality of locationcoordinate indicators defines said video segment retaining associationwith said global positioning data.
 91. The system of claim 90, whereinsaid video segment selector operable to receive said user indications toselect a first of said plurality of location coordinate indicators andto select a second of said plurality of location coordinate indicatorsin said geospatial representation depicted on said display surface ofsaid computing device, said first and second of said plurality oflocation coordinate indicators selected in said geospatialrepresentation correspondingly define a video segment start point and avideo segment end point of said video segment in said video stream data,said video segment retaining association with said global positioningdata.
 92. The system of claim 89, wherein said video segment selectordepicted on said display surface including a first video image selectionslider and a second video image selection slider which by userinteraction to select first video image and a second video image todefine a video segment start point and a video segment end point of avideo segment, said video segment retaining association with said globalpositioning data.
 93. The system of claim 90, wherein said video segmentselector depicted on said display surface which by user interaction witha first video image selection slider or a first location coordinateindicator defines a video segment start point and by user interactionwith a second video image selection slider or a second locationcoordinate indicator defines a video segment end point of a videosegment in said video images, said video segment retaining associationwith said global positioning data.
 94. The system of claim 93, whereinsaid video editor further executable to play back said video imagesassociated with said video segment on said display surface of saidcomputing device, said video segment retaining association with saidglobal positioning data.
 95. The system of claim 89, wherein said videoeditor module further executable to: extract said video segmentretaining said global positioning data from said video associated withsaid global positioning data; and preserve intact said video segmentassociated with said global positioning data.
 96. The system of claim95, wherein said video editor further executable to: extract said videosegment retaining said global positioning data from said video; anddelete said video segment associated with said global positioning datafrom said video images.
 97. The system of claim 96, wherein said videoeditor module further executable to correspondingly insert a blankinsert corresponding to said video segment extracted from said video.98. The system of claim 97, wherein said video editor module furtherexecutable to correspondingly delete said plurality of coordinatelocation indicators corresponding to said video segment from saidgeospatial representation depicted on said display surface.
 99. Thesystem of claim 98, wherein said video editor module further executableto splice a pair of video stream data ends to generate a spliced videohaving a lesser length, said spliced video retaining association withsaid global positioning data.
 100. The system of claim 99, wherein saidvideo editor further executable to remove a geospatial representationarea corresponding to said plurality of coordinate location indicatorsdeleted from said geospatial representation.
 101. The system of claim96, wherein said video editor further executable to correspondinglyinsert said video segment associated with said global positioning databetween a pair of video stream data ends to generate a spliced video,said spliced video retaining association with said global positioningdata.
 102. The system of claim 87, wherein said video editor modulefurther executable to associate or edit metadata with each video imagein said video or with corresponding said plurality of coordinatelocation indicators in said geospatial representation.
 103. The systemof claim 87, further comprising a way point extractor executable toextract a video images from said video stream associated with saidglobal positioning data at a way point.
 104. The system of claim 103,further comprising a companion file generator executable to generate acompanion file including said video image extracted from said videostream associated with said global positioning data at said way point.105. The system of claim 87, wherein said global positioning dataassociated with one or more of said video stream, a text overlay of saidvideo stream, a closed captioning section of said video stream, and anaudio stream.
 106. The system of claim 87, wherein said video editorfurther executable to associate video images within said video obtainedfrom said video stream data with said global positioning data.
 107. Thesystem of claim 106, wherein said video editor associates said videoimages obtained from said video stream data with said global positioningdata with one or more of said video stream, a text overlay in said videostream, in a closed captioning section of said video stream, and anaudio stream.
 108. The system of claim 106, wherein said video editorfurther executable to associate said location coordinates obtained fromsaid global positioning data with said video images obtained from saidvideo stream data.
 109. The system of claim 106, further comprising anencoder module executable to continuously embed said global positioningdata at intervals in said video stream or said audio stream.
 110. Thesystem of claim 108, further comprising: a global positioning systemreceiver executable by said processor to receive a global positioningsignal from a global positioning system; a video receiver executable bysaid processor to receive a video stream from a video recorder.